package com.cn.kehong.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class OeeWorkshopRateExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OeeWorkshopRateExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andOeeIdIsNull() {
            addCriterion("oee_id is null");
            return (Criteria) this;
        }

        public Criteria andOeeIdIsNotNull() {
            addCriterion("oee_id is not null");
            return (Criteria) this;
        }

        public Criteria andOeeIdEqualTo(String value) {
            addCriterion("oee_id =", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotEqualTo(String value) {
            addCriterion("oee_id <>", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdGreaterThan(String value) {
            addCriterion("oee_id >", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdGreaterThanOrEqualTo(String value) {
            addCriterion("oee_id >=", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLessThan(String value) {
            addCriterion("oee_id <", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLessThanOrEqualTo(String value) {
            addCriterion("oee_id <=", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdLike(String value) {
            addCriterion("oee_id like", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotLike(String value) {
            addCriterion("oee_id not like", value, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdIn(List<String> values) {
            addCriterion("oee_id in", values, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotIn(List<String> values) {
            addCriterion("oee_id not in", values, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdBetween(String value1, String value2) {
            addCriterion("oee_id between", value1, value2, "oeeId");
            return (Criteria) this;
        }

        public Criteria andOeeIdNotBetween(String value1, String value2) {
            addCriterion("oee_id not between", value1, value2, "oeeId");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andOeeNumberIsNull() {
            addCriterion("oee_number is null");
            return (Criteria) this;
        }

        public Criteria andOeeNumberIsNotNull() {
            addCriterion("oee_number is not null");
            return (Criteria) this;
        }

        public Criteria andOeeNumberEqualTo(String value) {
            addCriterion("oee_number =", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberNotEqualTo(String value) {
            addCriterion("oee_number <>", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberGreaterThan(String value) {
            addCriterion("oee_number >", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberGreaterThanOrEqualTo(String value) {
            addCriterion("oee_number >=", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberLessThan(String value) {
            addCriterion("oee_number <", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberLessThanOrEqualTo(String value) {
            addCriterion("oee_number <=", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberLike(String value) {
            addCriterion("oee_number like", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberNotLike(String value) {
            addCriterion("oee_number not like", value, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberIn(List<String> values) {
            addCriterion("oee_number in", values, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberNotIn(List<String> values) {
            addCriterion("oee_number not in", values, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberBetween(String value1, String value2) {
            addCriterion("oee_number between", value1, value2, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andOeeNumberNotBetween(String value1, String value2) {
            addCriterion("oee_number not between", value1, value2, "oeeNumber");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatIsNull() {
            addCriterion("benchmark_beat is null");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatIsNotNull() {
            addCriterion("benchmark_beat is not null");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatEqualTo(String value) {
            addCriterion("benchmark_beat =", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatNotEqualTo(String value) {
            addCriterion("benchmark_beat <>", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatGreaterThan(String value) {
            addCriterion("benchmark_beat >", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatGreaterThanOrEqualTo(String value) {
            addCriterion("benchmark_beat >=", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatLessThan(String value) {
            addCriterion("benchmark_beat <", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatLessThanOrEqualTo(String value) {
            addCriterion("benchmark_beat <=", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatLike(String value) {
            addCriterion("benchmark_beat like", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatNotLike(String value) {
            addCriterion("benchmark_beat not like", value, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatIn(List<String> values) {
            addCriterion("benchmark_beat in", values, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatNotIn(List<String> values) {
            addCriterion("benchmark_beat not in", values, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatBetween(String value1, String value2) {
            addCriterion("benchmark_beat between", value1, value2, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andBenchmarkBeatNotBetween(String value1, String value2) {
            addCriterion("benchmark_beat not between", value1, value2, "benchmarkBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatIsNull() {
            addCriterion("actual_beat is null");
            return (Criteria) this;
        }

        public Criteria andActualBeatIsNotNull() {
            addCriterion("actual_beat is not null");
            return (Criteria) this;
        }

        public Criteria andActualBeatEqualTo(String value) {
            addCriterion("actual_beat =", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatNotEqualTo(String value) {
            addCriterion("actual_beat <>", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatGreaterThan(String value) {
            addCriterion("actual_beat >", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatGreaterThanOrEqualTo(String value) {
            addCriterion("actual_beat >=", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatLessThan(String value) {
            addCriterion("actual_beat <", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatLessThanOrEqualTo(String value) {
            addCriterion("actual_beat <=", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatLike(String value) {
            addCriterion("actual_beat like", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatNotLike(String value) {
            addCriterion("actual_beat not like", value, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatIn(List<String> values) {
            addCriterion("actual_beat in", values, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatNotIn(List<String> values) {
            addCriterion("actual_beat not in", values, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatBetween(String value1, String value2) {
            addCriterion("actual_beat between", value1, value2, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andActualBeatNotBetween(String value1, String value2) {
            addCriterion("actual_beat not between", value1, value2, "actualBeat");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityIsNull() {
            addCriterion("total_production_quantity is null");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityIsNotNull() {
            addCriterion("total_production_quantity is not null");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityEqualTo(BigDecimal value) {
            addCriterion("total_production_quantity =", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityNotEqualTo(BigDecimal value) {
            addCriterion("total_production_quantity <>", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityGreaterThan(BigDecimal value) {
            addCriterion("total_production_quantity >", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("total_production_quantity >=", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityLessThan(BigDecimal value) {
            addCriterion("total_production_quantity <", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityLessThanOrEqualTo(BigDecimal value) {
            addCriterion("total_production_quantity <=", value, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityIn(List<BigDecimal> values) {
            addCriterion("total_production_quantity in", values, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityNotIn(List<BigDecimal> values) {
            addCriterion("total_production_quantity not in", values, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total_production_quantity between", value1, value2, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andTotalProductionQuantityNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("total_production_quantity not between", value1, value2, "totalProductionQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIsNull() {
            addCriterion("qualified_quantity is null");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIsNotNull() {
            addCriterion("qualified_quantity is not null");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity =", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity <>", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityGreaterThan(BigDecimal value) {
            addCriterion("qualified_quantity >", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity >=", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityLessThan(BigDecimal value) {
            addCriterion("qualified_quantity <", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityLessThanOrEqualTo(BigDecimal value) {
            addCriterion("qualified_quantity <=", value, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityIn(List<BigDecimal> values) {
            addCriterion("qualified_quantity in", values, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotIn(List<BigDecimal> values) {
            addCriterion("qualified_quantity not in", values, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("qualified_quantity between", value1, value2, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andQualifiedQuantityNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("qualified_quantity not between", value1, value2, "qualifiedQuantity");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsIsNull() {
            addCriterion("number_of_rejects is null");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsIsNotNull() {
            addCriterion("number_of_rejects is not null");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsEqualTo(BigDecimal value) {
            addCriterion("number_of_rejects =", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsNotEqualTo(BigDecimal value) {
            addCriterion("number_of_rejects <>", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsGreaterThan(BigDecimal value) {
            addCriterion("number_of_rejects >", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("number_of_rejects >=", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsLessThan(BigDecimal value) {
            addCriterion("number_of_rejects <", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsLessThanOrEqualTo(BigDecimal value) {
            addCriterion("number_of_rejects <=", value, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsIn(List<BigDecimal> values) {
            addCriterion("number_of_rejects in", values, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsNotIn(List<BigDecimal> values) {
            addCriterion("number_of_rejects not in", values, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("number_of_rejects between", value1, value2, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andNumberOfRejectsNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("number_of_rejects not between", value1, value2, "numberOfRejects");
            return (Criteria) this;
        }

        public Criteria andPassRateIsNull() {
            addCriterion("pass_rate is null");
            return (Criteria) this;
        }

        public Criteria andPassRateIsNotNull() {
            addCriterion("pass_rate is not null");
            return (Criteria) this;
        }

        public Criteria andPassRateEqualTo(String value) {
            addCriterion("pass_rate =", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateNotEqualTo(String value) {
            addCriterion("pass_rate <>", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateGreaterThan(String value) {
            addCriterion("pass_rate >", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateGreaterThanOrEqualTo(String value) {
            addCriterion("pass_rate >=", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateLessThan(String value) {
            addCriterion("pass_rate <", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateLessThanOrEqualTo(String value) {
            addCriterion("pass_rate <=", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateLike(String value) {
            addCriterion("pass_rate like", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateNotLike(String value) {
            addCriterion("pass_rate not like", value, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateIn(List<String> values) {
            addCriterion("pass_rate in", values, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateNotIn(List<String> values) {
            addCriterion("pass_rate not in", values, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateBetween(String value1, String value2) {
            addCriterion("pass_rate between", value1, value2, "passRate");
            return (Criteria) this;
        }

        public Criteria andPassRateNotBetween(String value1, String value2) {
            addCriterion("pass_rate not between", value1, value2, "passRate");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeIsNull() {
            addCriterion("plan_work_time is null");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeIsNotNull() {
            addCriterion("plan_work_time is not null");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeEqualTo(Integer value) {
            addCriterion("plan_work_time =", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeNotEqualTo(Integer value) {
            addCriterion("plan_work_time <>", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeGreaterThan(Integer value) {
            addCriterion("plan_work_time >", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeGreaterThanOrEqualTo(Integer value) {
            addCriterion("plan_work_time >=", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeLessThan(Integer value) {
            addCriterion("plan_work_time <", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeLessThanOrEqualTo(Integer value) {
            addCriterion("plan_work_time <=", value, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeIn(List<Integer> values) {
            addCriterion("plan_work_time in", values, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeNotIn(List<Integer> values) {
            addCriterion("plan_work_time not in", values, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeBetween(Integer value1, Integer value2) {
            addCriterion("plan_work_time between", value1, value2, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanWorkTimeNotBetween(Integer value1, Integer value2) {
            addCriterion("plan_work_time not between", value1, value2, "planWorkTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeIsNull() {
            addCriterion("plan_stop_time is null");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeIsNotNull() {
            addCriterion("plan_stop_time is not null");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeEqualTo(String value) {
            addCriterion("plan_stop_time =", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeNotEqualTo(String value) {
            addCriterion("plan_stop_time <>", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeGreaterThan(String value) {
            addCriterion("plan_stop_time >", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeGreaterThanOrEqualTo(String value) {
            addCriterion("plan_stop_time >=", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeLessThan(String value) {
            addCriterion("plan_stop_time <", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeLessThanOrEqualTo(String value) {
            addCriterion("plan_stop_time <=", value, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeIn(List<String> values) {
            addCriterion("plan_stop_time in", values, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeNotIn(List<String> values) {
            addCriterion("plan_stop_time not in", values, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeBetween(String value1, String value2) {
            addCriterion("plan_stop_time between", value1, value2, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andPlanStopTimeNotBetween(String value1, String value2) {
            addCriterion("plan_stop_time not between", value1, value2, "planStopTime");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionIsNull() {
            addCriterion("organizational_proportion is null");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionIsNotNull() {
            addCriterion("organizational_proportion is not null");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionEqualTo(String value) {
            addCriterion("organizational_proportion =", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionNotEqualTo(String value) {
            addCriterion("organizational_proportion <>", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionGreaterThan(String value) {
            addCriterion("organizational_proportion >", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionGreaterThanOrEqualTo(String value) {
            addCriterion("organizational_proportion >=", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionLessThan(String value) {
            addCriterion("organizational_proportion <", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionLessThanOrEqualTo(String value) {
            addCriterion("organizational_proportion <=", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionLike(String value) {
            addCriterion("organizational_proportion like", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionNotLike(String value) {
            addCriterion("organizational_proportion not like", value, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionIn(List<String> values) {
            addCriterion("organizational_proportion in", values, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionNotIn(List<String> values) {
            addCriterion("organizational_proportion not in", values, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionBetween(String value1, String value2) {
            addCriterion("organizational_proportion between", value1, value2, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andOrganizationalProportionNotBetween(String value1, String value2) {
            addCriterion("organizational_proportion not between", value1, value2, "organizationalProportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionIsNull() {
            addCriterion("tpm_roportion is null");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionIsNotNull() {
            addCriterion("tpm_roportion is not null");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionEqualTo(String value) {
            addCriterion("tpm_roportion =", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionNotEqualTo(String value) {
            addCriterion("tpm_roportion <>", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionGreaterThan(String value) {
            addCriterion("tpm_roportion >", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionGreaterThanOrEqualTo(String value) {
            addCriterion("tpm_roportion >=", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionLessThan(String value) {
            addCriterion("tpm_roportion <", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionLessThanOrEqualTo(String value) {
            addCriterion("tpm_roportion <=", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionLike(String value) {
            addCriterion("tpm_roportion like", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionNotLike(String value) {
            addCriterion("tpm_roportion not like", value, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionIn(List<String> values) {
            addCriterion("tpm_roportion in", values, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionNotIn(List<String> values) {
            addCriterion("tpm_roportion not in", values, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionBetween(String value1, String value2) {
            addCriterion("tpm_roportion between", value1, value2, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andTpmRoportionNotBetween(String value1, String value2) {
            addCriterion("tpm_roportion not between", value1, value2, "tpmRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionIsNull() {
            addCriterion("change_roportion is null");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionIsNotNull() {
            addCriterion("change_roportion is not null");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionEqualTo(String value) {
            addCriterion("change_roportion =", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionNotEqualTo(String value) {
            addCriterion("change_roportion <>", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionGreaterThan(String value) {
            addCriterion("change_roportion >", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionGreaterThanOrEqualTo(String value) {
            addCriterion("change_roportion >=", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionLessThan(String value) {
            addCriterion("change_roportion <", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionLessThanOrEqualTo(String value) {
            addCriterion("change_roportion <=", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionLike(String value) {
            addCriterion("change_roportion like", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionNotLike(String value) {
            addCriterion("change_roportion not like", value, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionIn(List<String> values) {
            addCriterion("change_roportion in", values, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionNotIn(List<String> values) {
            addCriterion("change_roportion not in", values, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionBetween(String value1, String value2) {
            addCriterion("change_roportion between", value1, value2, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andChangeRoportionNotBetween(String value1, String value2) {
            addCriterion("change_roportion not between", value1, value2, "changeRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionIsNull() {
            addCriterion("technology_roportion is null");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionIsNotNull() {
            addCriterion("technology_roportion is not null");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionEqualTo(String value) {
            addCriterion("technology_roportion =", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionNotEqualTo(String value) {
            addCriterion("technology_roportion <>", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionGreaterThan(String value) {
            addCriterion("technology_roportion >", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionGreaterThanOrEqualTo(String value) {
            addCriterion("technology_roportion >=", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionLessThan(String value) {
            addCriterion("technology_roportion <", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionLessThanOrEqualTo(String value) {
            addCriterion("technology_roportion <=", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionLike(String value) {
            addCriterion("technology_roportion like", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionNotLike(String value) {
            addCriterion("technology_roportion not like", value, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionIn(List<String> values) {
            addCriterion("technology_roportion in", values, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionNotIn(List<String> values) {
            addCriterion("technology_roportion not in", values, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionBetween(String value1, String value2) {
            addCriterion("technology_roportion between", value1, value2, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andTechnologyRoportionNotBetween(String value1, String value2) {
            addCriterion("technology_roportion not between", value1, value2, "technologyRoportion");
            return (Criteria) this;
        }

        public Criteria andAmountTotalIsNull() {
            addCriterion("amount_total is null");
            return (Criteria) this;
        }

        public Criteria andAmountTotalIsNotNull() {
            addCriterion("amount_total is not null");
            return (Criteria) this;
        }

        public Criteria andAmountTotalEqualTo(Integer value) {
            addCriterion("amount_total =", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalNotEqualTo(Integer value) {
            addCriterion("amount_total <>", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalGreaterThan(Integer value) {
            addCriterion("amount_total >", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalGreaterThanOrEqualTo(Integer value) {
            addCriterion("amount_total >=", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalLessThan(Integer value) {
            addCriterion("amount_total <", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalLessThanOrEqualTo(Integer value) {
            addCriterion("amount_total <=", value, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalIn(List<Integer> values) {
            addCriterion("amount_total in", values, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalNotIn(List<Integer> values) {
            addCriterion("amount_total not in", values, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalBetween(Integer value1, Integer value2) {
            addCriterion("amount_total between", value1, value2, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andAmountTotalNotBetween(Integer value1, Integer value2) {
            addCriterion("amount_total not between", value1, value2, "amountTotal");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionIsNull() {
            addCriterion("yield_roportion is null");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionIsNotNull() {
            addCriterion("yield_roportion is not null");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionEqualTo(String value) {
            addCriterion("yield_roportion =", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionNotEqualTo(String value) {
            addCriterion("yield_roportion <>", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionGreaterThan(String value) {
            addCriterion("yield_roportion >", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionGreaterThanOrEqualTo(String value) {
            addCriterion("yield_roportion >=", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionLessThan(String value) {
            addCriterion("yield_roportion <", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionLessThanOrEqualTo(String value) {
            addCriterion("yield_roportion <=", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionLike(String value) {
            addCriterion("yield_roportion like", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionNotLike(String value) {
            addCriterion("yield_roportion not like", value, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionIn(List<String> values) {
            addCriterion("yield_roportion in", values, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionNotIn(List<String> values) {
            addCriterion("yield_roportion not in", values, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionBetween(String value1, String value2) {
            addCriterion("yield_roportion between", value1, value2, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andYieldRoportionNotBetween(String value1, String value2) {
            addCriterion("yield_roportion not between", value1, value2, "yieldRoportion");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceIsNull() {
            addCriterion("time_compliance is null");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceIsNotNull() {
            addCriterion("time_compliance is not null");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceEqualTo(String value) {
            addCriterion("time_compliance =", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceNotEqualTo(String value) {
            addCriterion("time_compliance <>", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceGreaterThan(String value) {
            addCriterion("time_compliance >", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceGreaterThanOrEqualTo(String value) {
            addCriterion("time_compliance >=", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceLessThan(String value) {
            addCriterion("time_compliance <", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceLessThanOrEqualTo(String value) {
            addCriterion("time_compliance <=", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceLike(String value) {
            addCriterion("time_compliance like", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceNotLike(String value) {
            addCriterion("time_compliance not like", value, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceIn(List<String> values) {
            addCriterion("time_compliance in", values, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceNotIn(List<String> values) {
            addCriterion("time_compliance not in", values, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceBetween(String value1, String value2) {
            addCriterion("time_compliance between", value1, value2, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andTimeComplianceNotBetween(String value1, String value2) {
            addCriterion("time_compliance not between", value1, value2, "timeCompliance");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossIsNull() {
            addCriterion("performance_loss is null");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossIsNotNull() {
            addCriterion("performance_loss is not null");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossEqualTo(String value) {
            addCriterion("performance_loss =", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossNotEqualTo(String value) {
            addCriterion("performance_loss <>", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossGreaterThan(String value) {
            addCriterion("performance_loss >", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossGreaterThanOrEqualTo(String value) {
            addCriterion("performance_loss >=", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossLessThan(String value) {
            addCriterion("performance_loss <", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossLessThanOrEqualTo(String value) {
            addCriterion("performance_loss <=", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossLike(String value) {
            addCriterion("performance_loss like", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossNotLike(String value) {
            addCriterion("performance_loss not like", value, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossIn(List<String> values) {
            addCriterion("performance_loss in", values, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossNotIn(List<String> values) {
            addCriterion("performance_loss not in", values, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossBetween(String value1, String value2) {
            addCriterion("performance_loss between", value1, value2, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andPerformanceLossNotBetween(String value1, String value2) {
            addCriterion("performance_loss not between", value1, value2, "performanceLoss");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}